babl, sse2-float: fall back to slow, accurate path for large pow-2.4 inputs
The approximations we use for pow_24() and pow_1_24() diverge from
the actual function for large-enough input values. This can lead
not just to inaccurate results, but also to infinities and NaNs,
especially when multiple conversions are strung in a row.
When the input value is large enough to produce notable divergence
(the difference between the approximate and actual values is ~1% at
the chosen limits,) fall back to a slower, but more accurate
version.
For the SSE2 float conversions, this results in an increase of ~5%
in conversion time, when all values are below the limit. When most
values are above the limit, performance can be 10x slower or worse.